package cn.chason678.springbootwebdemo.cn.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class ProDeviceCnExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    protected int limitStart;

    protected int limitEnd;

    protected String groupByClause;

    public ProDeviceCnExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setLimitStart(int limitStart) {
        this.limitStart=limitStart;
    }

    public int getLimitStart() {
        return limitStart;
    }

    public void setLimitEnd(int limitEnd) {
        this.limitEnd=limitEnd;
    }

    public int getLimitEnd() {
        return limitEnd;
    }

    public void setGroupByClause(String groupByClause) {
        this.groupByClause=groupByClause;
    }

    public String getGroupByClause() {
        return groupByClause;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andOnlyCodeIsNull() {
            addCriterion("only_code is null");
            return (Criteria) this;
        }

        public Criteria andOnlyCodeIsNotNull() {
            addCriterion("only_code is not null");
            return (Criteria) this;
        }

        public Criteria andOnlyCodeEqualTo(String value) {
            addCriterion("only_code =", value, "onlyCode");
            return (Criteria) this;
        }

        public Criteria andOnlyCodeNotEqualTo(String value) {
            addCriterion("only_code <>", value, "onlyCode");
            return (Criteria) this;
        }

        public Criteria andOnlyCodeGreaterThan(String value) {
            addCriterion("only_code >", value, "onlyCode");
            return (Criteria) this;
        }

        public Criteria andOnlyCodeGreaterThanOrEqualTo(String value) {
            addCriterion("only_code >=", value, "onlyCode");
            return (Criteria) this;
        }

        public Criteria andOnlyCodeLessThan(String value) {
            addCriterion("only_code <", value, "onlyCode");
            return (Criteria) this;
        }

        public Criteria andOnlyCodeLessThanOrEqualTo(String value) {
            addCriterion("only_code <=", value, "onlyCode");
            return (Criteria) this;
        }

        public Criteria andOnlyCodeLike(String value) {
            addCriterion("only_code like", value, "onlyCode");
            return (Criteria) this;
        }

        public Criteria andOnlyCodeNotLike(String value) {
            addCriterion("only_code not like", value, "onlyCode");
            return (Criteria) this;
        }

        public Criteria andOnlyCodeIn(List<String> values) {
            addCriterion("only_code in", values, "onlyCode");
            return (Criteria) this;
        }

        public Criteria andOnlyCodeNotIn(List<String> values) {
            addCriterion("only_code not in", values, "onlyCode");
            return (Criteria) this;
        }

        public Criteria andOnlyCodeBetween(String value1, String value2) {
            addCriterion("only_code between", value1, value2, "onlyCode");
            return (Criteria) this;
        }

        public Criteria andOnlyCodeNotBetween(String value1, String value2) {
            addCriterion("only_code not between", value1, value2, "onlyCode");
            return (Criteria) this;
        }

        public Criteria andHleCodeIsNull() {
            addCriterion("hle_code is null");
            return (Criteria) this;
        }

        public Criteria andHleCodeIsNotNull() {
            addCriterion("hle_code is not null");
            return (Criteria) this;
        }

        public Criteria andHleCodeEqualTo(String value) {
            addCriterion("hle_code =", value, "hleCode");
            return (Criteria) this;
        }

        public Criteria andHleCodeNotEqualTo(String value) {
            addCriterion("hle_code <>", value, "hleCode");
            return (Criteria) this;
        }

        public Criteria andHleCodeGreaterThan(String value) {
            addCriterion("hle_code >", value, "hleCode");
            return (Criteria) this;
        }

        public Criteria andHleCodeGreaterThanOrEqualTo(String value) {
            addCriterion("hle_code >=", value, "hleCode");
            return (Criteria) this;
        }

        public Criteria andHleCodeLessThan(String value) {
            addCriterion("hle_code <", value, "hleCode");
            return (Criteria) this;
        }

        public Criteria andHleCodeLessThanOrEqualTo(String value) {
            addCriterion("hle_code <=", value, "hleCode");
            return (Criteria) this;
        }

        public Criteria andHleCodeLike(String value) {
            addCriterion("hle_code like", value, "hleCode");
            return (Criteria) this;
        }

        public Criteria andHleCodeNotLike(String value) {
            addCriterion("hle_code not like", value, "hleCode");
            return (Criteria) this;
        }

        public Criteria andHleCodeIn(List<String> values) {
            addCriterion("hle_code in", values, "hleCode");
            return (Criteria) this;
        }

        public Criteria andHleCodeNotIn(List<String> values) {
            addCriterion("hle_code not in", values, "hleCode");
            return (Criteria) this;
        }

        public Criteria andHleCodeBetween(String value1, String value2) {
            addCriterion("hle_code between", value1, value2, "hleCode");
            return (Criteria) this;
        }

        public Criteria andHleCodeNotBetween(String value1, String value2) {
            addCriterion("hle_code not between", value1, value2, "hleCode");
            return (Criteria) this;
        }

        public Criteria andNameIsNull() {
            addCriterion("name is null");
            return (Criteria) this;
        }

        public Criteria andNameIsNotNull() {
            addCriterion("name is not null");
            return (Criteria) this;
        }

        public Criteria andNameEqualTo(String value) {
            addCriterion("name =", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotEqualTo(String value) {
            addCriterion("name <>", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThan(String value) {
            addCriterion("name >", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThanOrEqualTo(String value) {
            addCriterion("name >=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThan(String value) {
            addCriterion("name <", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThanOrEqualTo(String value) {
            addCriterion("name <=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLike(String value) {
            addCriterion("name like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotLike(String value) {
            addCriterion("name not like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameIn(List<String> values) {
            addCriterion("name in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotIn(List<String> values) {
            addCriterion("name not in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameBetween(String value1, String value2) {
            addCriterion("name between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotBetween(String value1, String value2) {
            addCriterion("name not between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andSystemNameIsNull() {
            addCriterion("system_name is null");
            return (Criteria) this;
        }

        public Criteria andSystemNameIsNotNull() {
            addCriterion("system_name is not null");
            return (Criteria) this;
        }

        public Criteria andSystemNameEqualTo(String value) {
            addCriterion("system_name =", value, "systemName");
            return (Criteria) this;
        }

        public Criteria andSystemNameNotEqualTo(String value) {
            addCriterion("system_name <>", value, "systemName");
            return (Criteria) this;
        }

        public Criteria andSystemNameGreaterThan(String value) {
            addCriterion("system_name >", value, "systemName");
            return (Criteria) this;
        }

        public Criteria andSystemNameGreaterThanOrEqualTo(String value) {
            addCriterion("system_name >=", value, "systemName");
            return (Criteria) this;
        }

        public Criteria andSystemNameLessThan(String value) {
            addCriterion("system_name <", value, "systemName");
            return (Criteria) this;
        }

        public Criteria andSystemNameLessThanOrEqualTo(String value) {
            addCriterion("system_name <=", value, "systemName");
            return (Criteria) this;
        }

        public Criteria andSystemNameLike(String value) {
            addCriterion("system_name like", value, "systemName");
            return (Criteria) this;
        }

        public Criteria andSystemNameNotLike(String value) {
            addCriterion("system_name not like", value, "systemName");
            return (Criteria) this;
        }

        public Criteria andSystemNameIn(List<String> values) {
            addCriterion("system_name in", values, "systemName");
            return (Criteria) this;
        }

        public Criteria andSystemNameNotIn(List<String> values) {
            addCriterion("system_name not in", values, "systemName");
            return (Criteria) this;
        }

        public Criteria andSystemNameBetween(String value1, String value2) {
            addCriterion("system_name between", value1, value2, "systemName");
            return (Criteria) this;
        }

        public Criteria andSystemNameNotBetween(String value1, String value2) {
            addCriterion("system_name not between", value1, value2, "systemName");
            return (Criteria) this;
        }

        public Criteria andOdmIdIsNull() {
            addCriterion("odm_id is null");
            return (Criteria) this;
        }

        public Criteria andOdmIdIsNotNull() {
            addCriterion("odm_id is not null");
            return (Criteria) this;
        }

        public Criteria andOdmIdEqualTo(String value) {
            addCriterion("odm_id =", value, "odmId");
            return (Criteria) this;
        }

        public Criteria andOdmIdNotEqualTo(String value) {
            addCriterion("odm_id <>", value, "odmId");
            return (Criteria) this;
        }

        public Criteria andOdmIdGreaterThan(String value) {
            addCriterion("odm_id >", value, "odmId");
            return (Criteria) this;
        }

        public Criteria andOdmIdGreaterThanOrEqualTo(String value) {
            addCriterion("odm_id >=", value, "odmId");
            return (Criteria) this;
        }

        public Criteria andOdmIdLessThan(String value) {
            addCriterion("odm_id <", value, "odmId");
            return (Criteria) this;
        }

        public Criteria andOdmIdLessThanOrEqualTo(String value) {
            addCriterion("odm_id <=", value, "odmId");
            return (Criteria) this;
        }

        public Criteria andOdmIdLike(String value) {
            addCriterion("odm_id like", value, "odmId");
            return (Criteria) this;
        }

        public Criteria andOdmIdNotLike(String value) {
            addCriterion("odm_id not like", value, "odmId");
            return (Criteria) this;
        }

        public Criteria andOdmIdIn(List<String> values) {
            addCriterion("odm_id in", values, "odmId");
            return (Criteria) this;
        }

        public Criteria andOdmIdNotIn(List<String> values) {
            addCriterion("odm_id not in", values, "odmId");
            return (Criteria) this;
        }

        public Criteria andOdmIdBetween(String value1, String value2) {
            addCriterion("odm_id between", value1, value2, "odmId");
            return (Criteria) this;
        }

        public Criteria andOdmIdNotBetween(String value1, String value2) {
            addCriterion("odm_id not between", value1, value2, "odmId");
            return (Criteria) this;
        }

        public Criteria andOdmNameIsNull() {
            addCriterion("odm_name is null");
            return (Criteria) this;
        }

        public Criteria andOdmNameIsNotNull() {
            addCriterion("odm_name is not null");
            return (Criteria) this;
        }

        public Criteria andOdmNameEqualTo(String value) {
            addCriterion("odm_name =", value, "odmName");
            return (Criteria) this;
        }

        public Criteria andOdmNameNotEqualTo(String value) {
            addCriterion("odm_name <>", value, "odmName");
            return (Criteria) this;
        }

        public Criteria andOdmNameGreaterThan(String value) {
            addCriterion("odm_name >", value, "odmName");
            return (Criteria) this;
        }

        public Criteria andOdmNameGreaterThanOrEqualTo(String value) {
            addCriterion("odm_name >=", value, "odmName");
            return (Criteria) this;
        }

        public Criteria andOdmNameLessThan(String value) {
            addCriterion("odm_name <", value, "odmName");
            return (Criteria) this;
        }

        public Criteria andOdmNameLessThanOrEqualTo(String value) {
            addCriterion("odm_name <=", value, "odmName");
            return (Criteria) this;
        }

        public Criteria andOdmNameLike(String value) {
            addCriterion("odm_name like", value, "odmName");
            return (Criteria) this;
        }

        public Criteria andOdmNameNotLike(String value) {
            addCriterion("odm_name not like", value, "odmName");
            return (Criteria) this;
        }

        public Criteria andOdmNameIn(List<String> values) {
            addCriterion("odm_name in", values, "odmName");
            return (Criteria) this;
        }

        public Criteria andOdmNameNotIn(List<String> values) {
            addCriterion("odm_name not in", values, "odmName");
            return (Criteria) this;
        }

        public Criteria andOdmNameBetween(String value1, String value2) {
            addCriterion("odm_name between", value1, value2, "odmName");
            return (Criteria) this;
        }

        public Criteria andOdmNameNotBetween(String value1, String value2) {
            addCriterion("odm_name not between", value1, value2, "odmName");
            return (Criteria) this;
        }

        public Criteria andProductTypeIsNull() {
            addCriterion("product_type is null");
            return (Criteria) this;
        }

        public Criteria andProductTypeIsNotNull() {
            addCriterion("product_type is not null");
            return (Criteria) this;
        }

        public Criteria andProductTypeEqualTo(Integer value) {
            addCriterion("product_type =", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeNotEqualTo(Integer value) {
            addCriterion("product_type <>", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeGreaterThan(Integer value) {
            addCriterion("product_type >", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("product_type >=", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeLessThan(Integer value) {
            addCriterion("product_type <", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeLessThanOrEqualTo(Integer value) {
            addCriterion("product_type <=", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeIn(List<Integer> values) {
            addCriterion("product_type in", values, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeNotIn(List<Integer> values) {
            addCriterion("product_type not in", values, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeBetween(Integer value1, Integer value2) {
            addCriterion("product_type between", value1, value2, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("product_type not between", value1, value2, "productType");
            return (Criteria) this;
        }

        public Criteria andSeriesCategoryIsNull() {
            addCriterion("series_category is null");
            return (Criteria) this;
        }

        public Criteria andSeriesCategoryIsNotNull() {
            addCriterion("series_category is not null");
            return (Criteria) this;
        }

        public Criteria andSeriesCategoryEqualTo(Integer value) {
            addCriterion("series_category =", value, "seriesCategory");
            return (Criteria) this;
        }

        public Criteria andSeriesCategoryNotEqualTo(Integer value) {
            addCriterion("series_category <>", value, "seriesCategory");
            return (Criteria) this;
        }

        public Criteria andSeriesCategoryGreaterThan(Integer value) {
            addCriterion("series_category >", value, "seriesCategory");
            return (Criteria) this;
        }

        public Criteria andSeriesCategoryGreaterThanOrEqualTo(Integer value) {
            addCriterion("series_category >=", value, "seriesCategory");
            return (Criteria) this;
        }

        public Criteria andSeriesCategoryLessThan(Integer value) {
            addCriterion("series_category <", value, "seriesCategory");
            return (Criteria) this;
        }

        public Criteria andSeriesCategoryLessThanOrEqualTo(Integer value) {
            addCriterion("series_category <=", value, "seriesCategory");
            return (Criteria) this;
        }

        public Criteria andSeriesCategoryIn(List<Integer> values) {
            addCriterion("series_category in", values, "seriesCategory");
            return (Criteria) this;
        }

        public Criteria andSeriesCategoryNotIn(List<Integer> values) {
            addCriterion("series_category not in", values, "seriesCategory");
            return (Criteria) this;
        }

        public Criteria andSeriesCategoryBetween(Integer value1, Integer value2) {
            addCriterion("series_category between", value1, value2, "seriesCategory");
            return (Criteria) this;
        }

        public Criteria andSeriesCategoryNotBetween(Integer value1, Integer value2) {
            addCriterion("series_category not between", value1, value2, "seriesCategory");
            return (Criteria) this;
        }

        public Criteria andProductNumIsNull() {
            addCriterion("product_num is null");
            return (Criteria) this;
        }

        public Criteria andProductNumIsNotNull() {
            addCriterion("product_num is not null");
            return (Criteria) this;
        }

        public Criteria andProductNumEqualTo(String value) {
            addCriterion("product_num =", value, "productNum");
            return (Criteria) this;
        }

        public Criteria andProductNumNotEqualTo(String value) {
            addCriterion("product_num <>", value, "productNum");
            return (Criteria) this;
        }

        public Criteria andProductNumGreaterThan(String value) {
            addCriterion("product_num >", value, "productNum");
            return (Criteria) this;
        }

        public Criteria andProductNumGreaterThanOrEqualTo(String value) {
            addCriterion("product_num >=", value, "productNum");
            return (Criteria) this;
        }

        public Criteria andProductNumLessThan(String value) {
            addCriterion("product_num <", value, "productNum");
            return (Criteria) this;
        }

        public Criteria andProductNumLessThanOrEqualTo(String value) {
            addCriterion("product_num <=", value, "productNum");
            return (Criteria) this;
        }

        public Criteria andProductNumLike(String value) {
            addCriterion("product_num like", value, "productNum");
            return (Criteria) this;
        }

        public Criteria andProductNumNotLike(String value) {
            addCriterion("product_num not like", value, "productNum");
            return (Criteria) this;
        }

        public Criteria andProductNumIn(List<String> values) {
            addCriterion("product_num in", values, "productNum");
            return (Criteria) this;
        }

        public Criteria andProductNumNotIn(List<String> values) {
            addCriterion("product_num not in", values, "productNum");
            return (Criteria) this;
        }

        public Criteria andProductNumBetween(String value1, String value2) {
            addCriterion("product_num between", value1, value2, "productNum");
            return (Criteria) this;
        }

        public Criteria andProductNumNotBetween(String value1, String value2) {
            addCriterion("product_num not between", value1, value2, "productNum");
            return (Criteria) this;
        }

        public Criteria andOnlySerialNumIsNull() {
            addCriterion("only_serial_num is null");
            return (Criteria) this;
        }

        public Criteria andOnlySerialNumIsNotNull() {
            addCriterion("only_serial_num is not null");
            return (Criteria) this;
        }

        public Criteria andOnlySerialNumEqualTo(String value) {
            addCriterion("only_serial_num =", value, "onlySerialNum");
            return (Criteria) this;
        }

        public Criteria andOnlySerialNumNotEqualTo(String value) {
            addCriterion("only_serial_num <>", value, "onlySerialNum");
            return (Criteria) this;
        }

        public Criteria andOnlySerialNumGreaterThan(String value) {
            addCriterion("only_serial_num >", value, "onlySerialNum");
            return (Criteria) this;
        }

        public Criteria andOnlySerialNumGreaterThanOrEqualTo(String value) {
            addCriterion("only_serial_num >=", value, "onlySerialNum");
            return (Criteria) this;
        }

        public Criteria andOnlySerialNumLessThan(String value) {
            addCriterion("only_serial_num <", value, "onlySerialNum");
            return (Criteria) this;
        }

        public Criteria andOnlySerialNumLessThanOrEqualTo(String value) {
            addCriterion("only_serial_num <=", value, "onlySerialNum");
            return (Criteria) this;
        }

        public Criteria andOnlySerialNumLike(String value) {
            addCriterion("only_serial_num like", value, "onlySerialNum");
            return (Criteria) this;
        }

        public Criteria andOnlySerialNumNotLike(String value) {
            addCriterion("only_serial_num not like", value, "onlySerialNum");
            return (Criteria) this;
        }

        public Criteria andOnlySerialNumIn(List<String> values) {
            addCriterion("only_serial_num in", values, "onlySerialNum");
            return (Criteria) this;
        }

        public Criteria andOnlySerialNumNotIn(List<String> values) {
            addCriterion("only_serial_num not in", values, "onlySerialNum");
            return (Criteria) this;
        }

        public Criteria andOnlySerialNumBetween(String value1, String value2) {
            addCriterion("only_serial_num between", value1, value2, "onlySerialNum");
            return (Criteria) this;
        }

        public Criteria andOnlySerialNumNotBetween(String value1, String value2) {
            addCriterion("only_serial_num not between", value1, value2, "onlySerialNum");
            return (Criteria) this;
        }

        public Criteria andSerialNumPrefixIsNull() {
            addCriterion("serial_num_prefix is null");
            return (Criteria) this;
        }

        public Criteria andSerialNumPrefixIsNotNull() {
            addCriterion("serial_num_prefix is not null");
            return (Criteria) this;
        }

        public Criteria andSerialNumPrefixEqualTo(String value) {
            addCriterion("serial_num_prefix =", value, "serialNumPrefix");
            return (Criteria) this;
        }

        public Criteria andSerialNumPrefixNotEqualTo(String value) {
            addCriterion("serial_num_prefix <>", value, "serialNumPrefix");
            return (Criteria) this;
        }

        public Criteria andSerialNumPrefixGreaterThan(String value) {
            addCriterion("serial_num_prefix >", value, "serialNumPrefix");
            return (Criteria) this;
        }

        public Criteria andSerialNumPrefixGreaterThanOrEqualTo(String value) {
            addCriterion("serial_num_prefix >=", value, "serialNumPrefix");
            return (Criteria) this;
        }

        public Criteria andSerialNumPrefixLessThan(String value) {
            addCriterion("serial_num_prefix <", value, "serialNumPrefix");
            return (Criteria) this;
        }

        public Criteria andSerialNumPrefixLessThanOrEqualTo(String value) {
            addCriterion("serial_num_prefix <=", value, "serialNumPrefix");
            return (Criteria) this;
        }

        public Criteria andSerialNumPrefixLike(String value) {
            addCriterion("serial_num_prefix like", value, "serialNumPrefix");
            return (Criteria) this;
        }

        public Criteria andSerialNumPrefixNotLike(String value) {
            addCriterion("serial_num_prefix not like", value, "serialNumPrefix");
            return (Criteria) this;
        }

        public Criteria andSerialNumPrefixIn(List<String> values) {
            addCriterion("serial_num_prefix in", values, "serialNumPrefix");
            return (Criteria) this;
        }

        public Criteria andSerialNumPrefixNotIn(List<String> values) {
            addCriterion("serial_num_prefix not in", values, "serialNumPrefix");
            return (Criteria) this;
        }

        public Criteria andSerialNumPrefixBetween(String value1, String value2) {
            addCriterion("serial_num_prefix between", value1, value2, "serialNumPrefix");
            return (Criteria) this;
        }

        public Criteria andSerialNumPrefixNotBetween(String value1, String value2) {
            addCriterion("serial_num_prefix not between", value1, value2, "serialNumPrefix");
            return (Criteria) this;
        }

        public Criteria andTypeIsNull() {
            addCriterion("type is null");
            return (Criteria) this;
        }

        public Criteria andTypeIsNotNull() {
            addCriterion("type is not null");
            return (Criteria) this;
        }

        public Criteria andTypeEqualTo(Integer value) {
            addCriterion("type =", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotEqualTo(Integer value) {
            addCriterion("type <>", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThan(Integer value) {
            addCriterion("type >", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("type >=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThan(Integer value) {
            addCriterion("type <", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThanOrEqualTo(Integer value) {
            addCriterion("type <=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeIn(List<Integer> values) {
            addCriterion("type in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotIn(List<Integer> values) {
            addCriterion("type not in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeBetween(Integer value1, Integer value2) {
            addCriterion("type between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("type not between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andBatchNoIsNull() {
            addCriterion("batch_no is null");
            return (Criteria) this;
        }

        public Criteria andBatchNoIsNotNull() {
            addCriterion("batch_no is not null");
            return (Criteria) this;
        }

        public Criteria andBatchNoEqualTo(String value) {
            addCriterion("batch_no =", value, "batchNo");
            return (Criteria) this;
        }

        public Criteria andBatchNoNotEqualTo(String value) {
            addCriterion("batch_no <>", value, "batchNo");
            return (Criteria) this;
        }

        public Criteria andBatchNoGreaterThan(String value) {
            addCriterion("batch_no >", value, "batchNo");
            return (Criteria) this;
        }

        public Criteria andBatchNoGreaterThanOrEqualTo(String value) {
            addCriterion("batch_no >=", value, "batchNo");
            return (Criteria) this;
        }

        public Criteria andBatchNoLessThan(String value) {
            addCriterion("batch_no <", value, "batchNo");
            return (Criteria) this;
        }

        public Criteria andBatchNoLessThanOrEqualTo(String value) {
            addCriterion("batch_no <=", value, "batchNo");
            return (Criteria) this;
        }

        public Criteria andBatchNoLike(String value) {
            addCriterion("batch_no like", value, "batchNo");
            return (Criteria) this;
        }

        public Criteria andBatchNoNotLike(String value) {
            addCriterion("batch_no not like", value, "batchNo");
            return (Criteria) this;
        }

        public Criteria andBatchNoIn(List<String> values) {
            addCriterion("batch_no in", values, "batchNo");
            return (Criteria) this;
        }

        public Criteria andBatchNoNotIn(List<String> values) {
            addCriterion("batch_no not in", values, "batchNo");
            return (Criteria) this;
        }

        public Criteria andBatchNoBetween(String value1, String value2) {
            addCriterion("batch_no between", value1, value2, "batchNo");
            return (Criteria) this;
        }

        public Criteria andBatchNoNotBetween(String value1, String value2) {
            addCriterion("batch_no not between", value1, value2, "batchNo");
            return (Criteria) this;
        }

        public Criteria andActiveStatusIsNull() {
            addCriterion("active_status is null");
            return (Criteria) this;
        }

        public Criteria andActiveStatusIsNotNull() {
            addCriterion("active_status is not null");
            return (Criteria) this;
        }

        public Criteria andActiveStatusEqualTo(Integer value) {
            addCriterion("active_status =", value, "activeStatus");
            return (Criteria) this;
        }

        public Criteria andActiveStatusNotEqualTo(Integer value) {
            addCriterion("active_status <>", value, "activeStatus");
            return (Criteria) this;
        }

        public Criteria andActiveStatusGreaterThan(Integer value) {
            addCriterion("active_status >", value, "activeStatus");
            return (Criteria) this;
        }

        public Criteria andActiveStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("active_status >=", value, "activeStatus");
            return (Criteria) this;
        }

        public Criteria andActiveStatusLessThan(Integer value) {
            addCriterion("active_status <", value, "activeStatus");
            return (Criteria) this;
        }

        public Criteria andActiveStatusLessThanOrEqualTo(Integer value) {
            addCriterion("active_status <=", value, "activeStatus");
            return (Criteria) this;
        }

        public Criteria andActiveStatusIn(List<Integer> values) {
            addCriterion("active_status in", values, "activeStatus");
            return (Criteria) this;
        }

        public Criteria andActiveStatusNotIn(List<Integer> values) {
            addCriterion("active_status not in", values, "activeStatus");
            return (Criteria) this;
        }

        public Criteria andActiveStatusBetween(Integer value1, Integer value2) {
            addCriterion("active_status between", value1, value2, "activeStatus");
            return (Criteria) this;
        }

        public Criteria andActiveStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("active_status not between", value1, value2, "activeStatus");
            return (Criteria) this;
        }

        public Criteria andIsEnabledIsNull() {
            addCriterion("is_enabled is null");
            return (Criteria) this;
        }

        public Criteria andIsEnabledIsNotNull() {
            addCriterion("is_enabled is not null");
            return (Criteria) this;
        }

        public Criteria andIsEnabledEqualTo(Integer value) {
            addCriterion("is_enabled =", value, "isEnabled");
            return (Criteria) this;
        }

        public Criteria andIsEnabledNotEqualTo(Integer value) {
            addCriterion("is_enabled <>", value, "isEnabled");
            return (Criteria) this;
        }

        public Criteria andIsEnabledGreaterThan(Integer value) {
            addCriterion("is_enabled >", value, "isEnabled");
            return (Criteria) this;
        }

        public Criteria andIsEnabledGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_enabled >=", value, "isEnabled");
            return (Criteria) this;
        }

        public Criteria andIsEnabledLessThan(Integer value) {
            addCriterion("is_enabled <", value, "isEnabled");
            return (Criteria) this;
        }

        public Criteria andIsEnabledLessThanOrEqualTo(Integer value) {
            addCriterion("is_enabled <=", value, "isEnabled");
            return (Criteria) this;
        }

        public Criteria andIsEnabledIn(List<Integer> values) {
            addCriterion("is_enabled in", values, "isEnabled");
            return (Criteria) this;
        }

        public Criteria andIsEnabledNotIn(List<Integer> values) {
            addCriterion("is_enabled not in", values, "isEnabled");
            return (Criteria) this;
        }

        public Criteria andIsEnabledBetween(Integer value1, Integer value2) {
            addCriterion("is_enabled between", value1, value2, "isEnabled");
            return (Criteria) this;
        }

        public Criteria andIsEnabledNotBetween(Integer value1, Integer value2) {
            addCriterion("is_enabled not between", value1, value2, "isEnabled");
            return (Criteria) this;
        }

        public Criteria andLogoIsNull() {
            addCriterion("logo is null");
            return (Criteria) this;
        }

        public Criteria andLogoIsNotNull() {
            addCriterion("logo is not null");
            return (Criteria) this;
        }

        public Criteria andLogoEqualTo(String value) {
            addCriterion("logo =", value, "logo");
            return (Criteria) this;
        }

        public Criteria andLogoNotEqualTo(String value) {
            addCriterion("logo <>", value, "logo");
            return (Criteria) this;
        }

        public Criteria andLogoGreaterThan(String value) {
            addCriterion("logo >", value, "logo");
            return (Criteria) this;
        }

        public Criteria andLogoGreaterThanOrEqualTo(String value) {
            addCriterion("logo >=", value, "logo");
            return (Criteria) this;
        }

        public Criteria andLogoLessThan(String value) {
            addCriterion("logo <", value, "logo");
            return (Criteria) this;
        }

        public Criteria andLogoLessThanOrEqualTo(String value) {
            addCriterion("logo <=", value, "logo");
            return (Criteria) this;
        }

        public Criteria andLogoLike(String value) {
            addCriterion("logo like", value, "logo");
            return (Criteria) this;
        }

        public Criteria andLogoNotLike(String value) {
            addCriterion("logo not like", value, "logo");
            return (Criteria) this;
        }

        public Criteria andLogoIn(List<String> values) {
            addCriterion("logo in", values, "logo");
            return (Criteria) this;
        }

        public Criteria andLogoNotIn(List<String> values) {
            addCriterion("logo not in", values, "logo");
            return (Criteria) this;
        }

        public Criteria andLogoBetween(String value1, String value2) {
            addCriterion("logo between", value1, value2, "logo");
            return (Criteria) this;
        }

        public Criteria andLogoNotBetween(String value1, String value2) {
            addCriterion("logo not between", value1, value2, "logo");
            return (Criteria) this;
        }

        public Criteria andViewAccIsNull() {
            addCriterion("view_acc is null");
            return (Criteria) this;
        }

        public Criteria andViewAccIsNotNull() {
            addCriterion("view_acc is not null");
            return (Criteria) this;
        }

        public Criteria andViewAccEqualTo(String value) {
            addCriterion("view_acc =", value, "viewAcc");
            return (Criteria) this;
        }

        public Criteria andViewAccNotEqualTo(String value) {
            addCriterion("view_acc <>", value, "viewAcc");
            return (Criteria) this;
        }

        public Criteria andViewAccGreaterThan(String value) {
            addCriterion("view_acc >", value, "viewAcc");
            return (Criteria) this;
        }

        public Criteria andViewAccGreaterThanOrEqualTo(String value) {
            addCriterion("view_acc >=", value, "viewAcc");
            return (Criteria) this;
        }

        public Criteria andViewAccLessThan(String value) {
            addCriterion("view_acc <", value, "viewAcc");
            return (Criteria) this;
        }

        public Criteria andViewAccLessThanOrEqualTo(String value) {
            addCriterion("view_acc <=", value, "viewAcc");
            return (Criteria) this;
        }

        public Criteria andViewAccLike(String value) {
            addCriterion("view_acc like", value, "viewAcc");
            return (Criteria) this;
        }

        public Criteria andViewAccNotLike(String value) {
            addCriterion("view_acc not like", value, "viewAcc");
            return (Criteria) this;
        }

        public Criteria andViewAccIn(List<String> values) {
            addCriterion("view_acc in", values, "viewAcc");
            return (Criteria) this;
        }

        public Criteria andViewAccNotIn(List<String> values) {
            addCriterion("view_acc not in", values, "viewAcc");
            return (Criteria) this;
        }

        public Criteria andViewAccBetween(String value1, String value2) {
            addCriterion("view_acc between", value1, value2, "viewAcc");
            return (Criteria) this;
        }

        public Criteria andViewAccNotBetween(String value1, String value2) {
            addCriterion("view_acc not between", value1, value2, "viewAcc");
            return (Criteria) this;
        }

        public Criteria andViewPwdIsNull() {
            addCriterion("view_pwd is null");
            return (Criteria) this;
        }

        public Criteria andViewPwdIsNotNull() {
            addCriterion("view_pwd is not null");
            return (Criteria) this;
        }

        public Criteria andViewPwdEqualTo(String value) {
            addCriterion("view_pwd =", value, "viewPwd");
            return (Criteria) this;
        }

        public Criteria andViewPwdNotEqualTo(String value) {
            addCriterion("view_pwd <>", value, "viewPwd");
            return (Criteria) this;
        }

        public Criteria andViewPwdGreaterThan(String value) {
            addCriterion("view_pwd >", value, "viewPwd");
            return (Criteria) this;
        }

        public Criteria andViewPwdGreaterThanOrEqualTo(String value) {
            addCriterion("view_pwd >=", value, "viewPwd");
            return (Criteria) this;
        }

        public Criteria andViewPwdLessThan(String value) {
            addCriterion("view_pwd <", value, "viewPwd");
            return (Criteria) this;
        }

        public Criteria andViewPwdLessThanOrEqualTo(String value) {
            addCriterion("view_pwd <=", value, "viewPwd");
            return (Criteria) this;
        }

        public Criteria andViewPwdLike(String value) {
            addCriterion("view_pwd like", value, "viewPwd");
            return (Criteria) this;
        }

        public Criteria andViewPwdNotLike(String value) {
            addCriterion("view_pwd not like", value, "viewPwd");
            return (Criteria) this;
        }

        public Criteria andViewPwdIn(List<String> values) {
            addCriterion("view_pwd in", values, "viewPwd");
            return (Criteria) this;
        }

        public Criteria andViewPwdNotIn(List<String> values) {
            addCriterion("view_pwd not in", values, "viewPwd");
            return (Criteria) this;
        }

        public Criteria andViewPwdBetween(String value1, String value2) {
            addCriterion("view_pwd between", value1, value2, "viewPwd");
            return (Criteria) this;
        }

        public Criteria andViewPwdNotBetween(String value1, String value2) {
            addCriterion("view_pwd not between", value1, value2, "viewPwd");
            return (Criteria) this;
        }

        public Criteria andConnectModelIsNull() {
            addCriterion("connect_model is null");
            return (Criteria) this;
        }

        public Criteria andConnectModelIsNotNull() {
            addCriterion("connect_model is not null");
            return (Criteria) this;
        }

        public Criteria andConnectModelEqualTo(Integer value) {
            addCriterion("connect_model =", value, "connectModel");
            return (Criteria) this;
        }

        public Criteria andConnectModelNotEqualTo(Integer value) {
            addCriterion("connect_model <>", value, "connectModel");
            return (Criteria) this;
        }

        public Criteria andConnectModelGreaterThan(Integer value) {
            addCriterion("connect_model >", value, "connectModel");
            return (Criteria) this;
        }

        public Criteria andConnectModelGreaterThanOrEqualTo(Integer value) {
            addCriterion("connect_model >=", value, "connectModel");
            return (Criteria) this;
        }

        public Criteria andConnectModelLessThan(Integer value) {
            addCriterion("connect_model <", value, "connectModel");
            return (Criteria) this;
        }

        public Criteria andConnectModelLessThanOrEqualTo(Integer value) {
            addCriterion("connect_model <=", value, "connectModel");
            return (Criteria) this;
        }

        public Criteria andConnectModelIn(List<Integer> values) {
            addCriterion("connect_model in", values, "connectModel");
            return (Criteria) this;
        }

        public Criteria andConnectModelNotIn(List<Integer> values) {
            addCriterion("connect_model not in", values, "connectModel");
            return (Criteria) this;
        }

        public Criteria andConnectModelBetween(Integer value1, Integer value2) {
            addCriterion("connect_model between", value1, value2, "connectModel");
            return (Criteria) this;
        }

        public Criteria andConnectModelNotBetween(Integer value1, Integer value2) {
            addCriterion("connect_model not between", value1, value2, "connectModel");
            return (Criteria) this;
        }

        public Criteria andChipMakerIsNull() {
            addCriterion("chip_maker is null");
            return (Criteria) this;
        }

        public Criteria andChipMakerIsNotNull() {
            addCriterion("chip_maker is not null");
            return (Criteria) this;
        }

        public Criteria andChipMakerEqualTo(Integer value) {
            addCriterion("chip_maker =", value, "chipMaker");
            return (Criteria) this;
        }

        public Criteria andChipMakerNotEqualTo(Integer value) {
            addCriterion("chip_maker <>", value, "chipMaker");
            return (Criteria) this;
        }

        public Criteria andChipMakerGreaterThan(Integer value) {
            addCriterion("chip_maker >", value, "chipMaker");
            return (Criteria) this;
        }

        public Criteria andChipMakerGreaterThanOrEqualTo(Integer value) {
            addCriterion("chip_maker >=", value, "chipMaker");
            return (Criteria) this;
        }

        public Criteria andChipMakerLessThan(Integer value) {
            addCriterion("chip_maker <", value, "chipMaker");
            return (Criteria) this;
        }

        public Criteria andChipMakerLessThanOrEqualTo(Integer value) {
            addCriterion("chip_maker <=", value, "chipMaker");
            return (Criteria) this;
        }

        public Criteria andChipMakerIn(List<Integer> values) {
            addCriterion("chip_maker in", values, "chipMaker");
            return (Criteria) this;
        }

        public Criteria andChipMakerNotIn(List<Integer> values) {
            addCriterion("chip_maker not in", values, "chipMaker");
            return (Criteria) this;
        }

        public Criteria andChipMakerBetween(Integer value1, Integer value2) {
            addCriterion("chip_maker between", value1, value2, "chipMaker");
            return (Criteria) this;
        }

        public Criteria andChipMakerNotBetween(Integer value1, Integer value2) {
            addCriterion("chip_maker not between", value1, value2, "chipMaker");
            return (Criteria) this;
        }

        public Criteria andUiidIsNull() {
            addCriterion("uiid is null");
            return (Criteria) this;
        }

        public Criteria andUiidIsNotNull() {
            addCriterion("uiid is not null");
            return (Criteria) this;
        }

        public Criteria andUiidEqualTo(String value) {
            addCriterion("uiid =", value, "uiid");
            return (Criteria) this;
        }

        public Criteria andUiidNotEqualTo(String value) {
            addCriterion("uiid <>", value, "uiid");
            return (Criteria) this;
        }

        public Criteria andUiidGreaterThan(String value) {
            addCriterion("uiid >", value, "uiid");
            return (Criteria) this;
        }

        public Criteria andUiidGreaterThanOrEqualTo(String value) {
            addCriterion("uiid >=", value, "uiid");
            return (Criteria) this;
        }

        public Criteria andUiidLessThan(String value) {
            addCriterion("uiid <", value, "uiid");
            return (Criteria) this;
        }

        public Criteria andUiidLessThanOrEqualTo(String value) {
            addCriterion("uiid <=", value, "uiid");
            return (Criteria) this;
        }

        public Criteria andUiidLike(String value) {
            addCriterion("uiid like", value, "uiid");
            return (Criteria) this;
        }

        public Criteria andUiidNotLike(String value) {
            addCriterion("uiid not like", value, "uiid");
            return (Criteria) this;
        }

        public Criteria andUiidIn(List<String> values) {
            addCriterion("uiid in", values, "uiid");
            return (Criteria) this;
        }

        public Criteria andUiidNotIn(List<String> values) {
            addCriterion("uiid not in", values, "uiid");
            return (Criteria) this;
        }

        public Criteria andUiidBetween(String value1, String value2) {
            addCriterion("uiid between", value1, value2, "uiid");
            return (Criteria) this;
        }

        public Criteria andUiidNotBetween(String value1, String value2) {
            addCriterion("uiid not between", value1, value2, "uiid");
            return (Criteria) this;
        }

        public Criteria andMacIsNull() {
            addCriterion("mac is null");
            return (Criteria) this;
        }

        public Criteria andMacIsNotNull() {
            addCriterion("mac is not null");
            return (Criteria) this;
        }

        public Criteria andMacEqualTo(String value) {
            addCriterion("mac =", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacNotEqualTo(String value) {
            addCriterion("mac <>", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacGreaterThan(String value) {
            addCriterion("mac >", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacGreaterThanOrEqualTo(String value) {
            addCriterion("mac >=", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacLessThan(String value) {
            addCriterion("mac <", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacLessThanOrEqualTo(String value) {
            addCriterion("mac <=", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacLike(String value) {
            addCriterion("mac like", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacNotLike(String value) {
            addCriterion("mac not like", value, "mac");
            return (Criteria) this;
        }

        public Criteria andMacIn(List<String> values) {
            addCriterion("mac in", values, "mac");
            return (Criteria) this;
        }

        public Criteria andMacNotIn(List<String> values) {
            addCriterion("mac not in", values, "mac");
            return (Criteria) this;
        }

        public Criteria andMacBetween(String value1, String value2) {
            addCriterion("mac between", value1, value2, "mac");
            return (Criteria) this;
        }

        public Criteria andMacNotBetween(String value1, String value2) {
            addCriterion("mac not between", value1, value2, "mac");
            return (Criteria) this;
        }

        public Criteria andMacTypeIsNull() {
            addCriterion("mac_type is null");
            return (Criteria) this;
        }

        public Criteria andMacTypeIsNotNull() {
            addCriterion("mac_type is not null");
            return (Criteria) this;
        }

        public Criteria andMacTypeEqualTo(Byte value) {
            addCriterion("mac_type =", value, "macType");
            return (Criteria) this;
        }

        public Criteria andMacTypeNotEqualTo(Byte value) {
            addCriterion("mac_type <>", value, "macType");
            return (Criteria) this;
        }

        public Criteria andMacTypeGreaterThan(Byte value) {
            addCriterion("mac_type >", value, "macType");
            return (Criteria) this;
        }

        public Criteria andMacTypeGreaterThanOrEqualTo(Byte value) {
            addCriterion("mac_type >=", value, "macType");
            return (Criteria) this;
        }

        public Criteria andMacTypeLessThan(Byte value) {
            addCriterion("mac_type <", value, "macType");
            return (Criteria) this;
        }

        public Criteria andMacTypeLessThanOrEqualTo(Byte value) {
            addCriterion("mac_type <=", value, "macType");
            return (Criteria) this;
        }

        public Criteria andMacTypeIn(List<Byte> values) {
            addCriterion("mac_type in", values, "macType");
            return (Criteria) this;
        }

        public Criteria andMacTypeNotIn(List<Byte> values) {
            addCriterion("mac_type not in", values, "macType");
            return (Criteria) this;
        }

        public Criteria andMacTypeBetween(Byte value1, Byte value2) {
            addCriterion("mac_type between", value1, value2, "macType");
            return (Criteria) this;
        }

        public Criteria andMacTypeNotBetween(Byte value1, Byte value2) {
            addCriterion("mac_type not between", value1, value2, "macType");
            return (Criteria) this;
        }

        public Criteria andAliIotDeviceSecretIsNull() {
            addCriterion("ali_iot_device_secret is null");
            return (Criteria) this;
        }

        public Criteria andAliIotDeviceSecretIsNotNull() {
            addCriterion("ali_iot_device_secret is not null");
            return (Criteria) this;
        }

        public Criteria andAliIotDeviceSecretEqualTo(String value) {
            addCriterion("ali_iot_device_secret =", value, "aliIotDeviceSecret");
            return (Criteria) this;
        }

        public Criteria andAliIotDeviceSecretNotEqualTo(String value) {
            addCriterion("ali_iot_device_secret <>", value, "aliIotDeviceSecret");
            return (Criteria) this;
        }

        public Criteria andAliIotDeviceSecretGreaterThan(String value) {
            addCriterion("ali_iot_device_secret >", value, "aliIotDeviceSecret");
            return (Criteria) this;
        }

        public Criteria andAliIotDeviceSecretGreaterThanOrEqualTo(String value) {
            addCriterion("ali_iot_device_secret >=", value, "aliIotDeviceSecret");
            return (Criteria) this;
        }

        public Criteria andAliIotDeviceSecretLessThan(String value) {
            addCriterion("ali_iot_device_secret <", value, "aliIotDeviceSecret");
            return (Criteria) this;
        }

        public Criteria andAliIotDeviceSecretLessThanOrEqualTo(String value) {
            addCriterion("ali_iot_device_secret <=", value, "aliIotDeviceSecret");
            return (Criteria) this;
        }

        public Criteria andAliIotDeviceSecretLike(String value) {
            addCriterion("ali_iot_device_secret like", value, "aliIotDeviceSecret");
            return (Criteria) this;
        }

        public Criteria andAliIotDeviceSecretNotLike(String value) {
            addCriterion("ali_iot_device_secret not like", value, "aliIotDeviceSecret");
            return (Criteria) this;
        }

        public Criteria andAliIotDeviceSecretIn(List<String> values) {
            addCriterion("ali_iot_device_secret in", values, "aliIotDeviceSecret");
            return (Criteria) this;
        }

        public Criteria andAliIotDeviceSecretNotIn(List<String> values) {
            addCriterion("ali_iot_device_secret not in", values, "aliIotDeviceSecret");
            return (Criteria) this;
        }

        public Criteria andAliIotDeviceSecretBetween(String value1, String value2) {
            addCriterion("ali_iot_device_secret between", value1, value2, "aliIotDeviceSecret");
            return (Criteria) this;
        }

        public Criteria andAliIotDeviceSecretNotBetween(String value1, String value2) {
            addCriterion("ali_iot_device_secret not between", value1, value2, "aliIotDeviceSecret");
            return (Criteria) this;
        }

        public Criteria andSubMacCodeIsNull() {
            addCriterion("sub_mac_code is null");
            return (Criteria) this;
        }

        public Criteria andSubMacCodeIsNotNull() {
            addCriterion("sub_mac_code is not null");
            return (Criteria) this;
        }

        public Criteria andSubMacCodeEqualTo(String value) {
            addCriterion("sub_mac_code =", value, "subMacCode");
            return (Criteria) this;
        }

        public Criteria andSubMacCodeNotEqualTo(String value) {
            addCriterion("sub_mac_code <>", value, "subMacCode");
            return (Criteria) this;
        }

        public Criteria andSubMacCodeGreaterThan(String value) {
            addCriterion("sub_mac_code >", value, "subMacCode");
            return (Criteria) this;
        }

        public Criteria andSubMacCodeGreaterThanOrEqualTo(String value) {
            addCriterion("sub_mac_code >=", value, "subMacCode");
            return (Criteria) this;
        }

        public Criteria andSubMacCodeLessThan(String value) {
            addCriterion("sub_mac_code <", value, "subMacCode");
            return (Criteria) this;
        }

        public Criteria andSubMacCodeLessThanOrEqualTo(String value) {
            addCriterion("sub_mac_code <=", value, "subMacCode");
            return (Criteria) this;
        }

        public Criteria andSubMacCodeLike(String value) {
            addCriterion("sub_mac_code like", value, "subMacCode");
            return (Criteria) this;
        }

        public Criteria andSubMacCodeNotLike(String value) {
            addCriterion("sub_mac_code not like", value, "subMacCode");
            return (Criteria) this;
        }

        public Criteria andSubMacCodeIn(List<String> values) {
            addCriterion("sub_mac_code in", values, "subMacCode");
            return (Criteria) this;
        }

        public Criteria andSubMacCodeNotIn(List<String> values) {
            addCriterion("sub_mac_code not in", values, "subMacCode");
            return (Criteria) this;
        }

        public Criteria andSubMacCodeBetween(String value1, String value2) {
            addCriterion("sub_mac_code between", value1, value2, "subMacCode");
            return (Criteria) this;
        }

        public Criteria andSubMacCodeNotBetween(String value1, String value2) {
            addCriterion("sub_mac_code not between", value1, value2, "subMacCode");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNull() {
            addCriterion("remark is null");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNotNull() {
            addCriterion("remark is not null");
            return (Criteria) this;
        }

        public Criteria andRemarkEqualTo(String value) {
            addCriterion("remark =", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotEqualTo(String value) {
            addCriterion("remark <>", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThan(String value) {
            addCriterion("remark >", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("remark >=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThan(String value) {
            addCriterion("remark <", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThanOrEqualTo(String value) {
            addCriterion("remark <=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLike(String value) {
            addCriterion("remark like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotLike(String value) {
            addCriterion("remark not like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkIn(List<String> values) {
            addCriterion("remark in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotIn(List<String> values) {
            addCriterion("remark not in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkBetween(String value1, String value2) {
            addCriterion("remark between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotBetween(String value1, String value2) {
            addCriterion("remark not between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNull() {
            addCriterion("create_date is null");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNotNull() {
            addCriterion("create_date is not null");
            return (Criteria) this;
        }

        public Criteria andCreateDateEqualTo(Date value) {
            addCriterion("create_date =", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotEqualTo(Date value) {
            addCriterion("create_date <>", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThan(Date value) {
            addCriterion("create_date >", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThanOrEqualTo(Date value) {
            addCriterion("create_date >=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThan(Date value) {
            addCriterion("create_date <", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThanOrEqualTo(Date value) {
            addCriterion("create_date <=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateIn(List<Date> values) {
            addCriterion("create_date in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotIn(List<Date> values) {
            addCriterion("create_date not in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateBetween(Date value1, Date value2) {
            addCriterion("create_date between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotBetween(Date value1, Date value2) {
            addCriterion("create_date not between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andFirmwareNoIsNull() {
            addCriterion("firmware_no is null");
            return (Criteria) this;
        }

        public Criteria andFirmwareNoIsNotNull() {
            addCriterion("firmware_no is not null");
            return (Criteria) this;
        }

        public Criteria andFirmwareNoEqualTo(String value) {
            addCriterion("firmware_no =", value, "firmwareNo");
            return (Criteria) this;
        }

        public Criteria andFirmwareNoNotEqualTo(String value) {
            addCriterion("firmware_no <>", value, "firmwareNo");
            return (Criteria) this;
        }

        public Criteria andFirmwareNoGreaterThan(String value) {
            addCriterion("firmware_no >", value, "firmwareNo");
            return (Criteria) this;
        }

        public Criteria andFirmwareNoGreaterThanOrEqualTo(String value) {
            addCriterion("firmware_no >=", value, "firmwareNo");
            return (Criteria) this;
        }

        public Criteria andFirmwareNoLessThan(String value) {
            addCriterion("firmware_no <", value, "firmwareNo");
            return (Criteria) this;
        }

        public Criteria andFirmwareNoLessThanOrEqualTo(String value) {
            addCriterion("firmware_no <=", value, "firmwareNo");
            return (Criteria) this;
        }

        public Criteria andFirmwareNoLike(String value) {
            addCriterion("firmware_no like", value, "firmwareNo");
            return (Criteria) this;
        }

        public Criteria andFirmwareNoNotLike(String value) {
            addCriterion("firmware_no not like", value, "firmwareNo");
            return (Criteria) this;
        }

        public Criteria andFirmwareNoIn(List<String> values) {
            addCriterion("firmware_no in", values, "firmwareNo");
            return (Criteria) this;
        }

        public Criteria andFirmwareNoNotIn(List<String> values) {
            addCriterion("firmware_no not in", values, "firmwareNo");
            return (Criteria) this;
        }

        public Criteria andFirmwareNoBetween(String value1, String value2) {
            addCriterion("firmware_no between", value1, value2, "firmwareNo");
            return (Criteria) this;
        }

        public Criteria andFirmwareNoNotBetween(String value1, String value2) {
            addCriterion("firmware_no not between", value1, value2, "firmwareNo");
            return (Criteria) this;
        }

        public Criteria andModuleNoIsNull() {
            addCriterion("module_no is null");
            return (Criteria) this;
        }

        public Criteria andModuleNoIsNotNull() {
            addCriterion("module_no is not null");
            return (Criteria) this;
        }

        public Criteria andModuleNoEqualTo(String value) {
            addCriterion("module_no =", value, "moduleNo");
            return (Criteria) this;
        }

        public Criteria andModuleNoNotEqualTo(String value) {
            addCriterion("module_no <>", value, "moduleNo");
            return (Criteria) this;
        }

        public Criteria andModuleNoGreaterThan(String value) {
            addCriterion("module_no >", value, "moduleNo");
            return (Criteria) this;
        }

        public Criteria andModuleNoGreaterThanOrEqualTo(String value) {
            addCriterion("module_no >=", value, "moduleNo");
            return (Criteria) this;
        }

        public Criteria andModuleNoLessThan(String value) {
            addCriterion("module_no <", value, "moduleNo");
            return (Criteria) this;
        }

        public Criteria andModuleNoLessThanOrEqualTo(String value) {
            addCriterion("module_no <=", value, "moduleNo");
            return (Criteria) this;
        }

        public Criteria andModuleNoLike(String value) {
            addCriterion("module_no like", value, "moduleNo");
            return (Criteria) this;
        }

        public Criteria andModuleNoNotLike(String value) {
            addCriterion("module_no not like", value, "moduleNo");
            return (Criteria) this;
        }

        public Criteria andModuleNoIn(List<String> values) {
            addCriterion("module_no in", values, "moduleNo");
            return (Criteria) this;
        }

        public Criteria andModuleNoNotIn(List<String> values) {
            addCriterion("module_no not in", values, "moduleNo");
            return (Criteria) this;
        }

        public Criteria andModuleNoBetween(String value1, String value2) {
            addCriterion("module_no between", value1, value2, "moduleNo");
            return (Criteria) this;
        }

        public Criteria andModuleNoNotBetween(String value1, String value2) {
            addCriterion("module_no not between", value1, value2, "moduleNo");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionIsNull() {
            addCriterion("firmware_version is null");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionIsNotNull() {
            addCriterion("firmware_version is not null");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionEqualTo(String value) {
            addCriterion("firmware_version =", value, "firmwareVersion");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionNotEqualTo(String value) {
            addCriterion("firmware_version <>", value, "firmwareVersion");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionGreaterThan(String value) {
            addCriterion("firmware_version >", value, "firmwareVersion");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionGreaterThanOrEqualTo(String value) {
            addCriterion("firmware_version >=", value, "firmwareVersion");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionLessThan(String value) {
            addCriterion("firmware_version <", value, "firmwareVersion");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionLessThanOrEqualTo(String value) {
            addCriterion("firmware_version <=", value, "firmwareVersion");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionLike(String value) {
            addCriterion("firmware_version like", value, "firmwareVersion");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionNotLike(String value) {
            addCriterion("firmware_version not like", value, "firmwareVersion");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionIn(List<String> values) {
            addCriterion("firmware_version in", values, "firmwareVersion");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionNotIn(List<String> values) {
            addCriterion("firmware_version not in", values, "firmwareVersion");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionBetween(String value1, String value2) {
            addCriterion("firmware_version between", value1, value2, "firmwareVersion");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionNotBetween(String value1, String value2) {
            addCriterion("firmware_version not between", value1, value2, "firmwareVersion");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareIsNull() {
            addCriterion("firmware_version_compare is null");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareIsNotNull() {
            addCriterion("firmware_version_compare is not null");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareEqualTo(String value) {
            addCriterion("firmware_version_compare =", value, "firmwareVersionCompare");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareNotEqualTo(String value) {
            addCriterion("firmware_version_compare <>", value, "firmwareVersionCompare");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareGreaterThan(String value) {
            addCriterion("firmware_version_compare >", value, "firmwareVersionCompare");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareGreaterThanOrEqualTo(String value) {
            addCriterion("firmware_version_compare >=", value, "firmwareVersionCompare");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareLessThan(String value) {
            addCriterion("firmware_version_compare <", value, "firmwareVersionCompare");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareLessThanOrEqualTo(String value) {
            addCriterion("firmware_version_compare <=", value, "firmwareVersionCompare");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareLike(String value) {
            addCriterion("firmware_version_compare like", value, "firmwareVersionCompare");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareNotLike(String value) {
            addCriterion("firmware_version_compare not like", value, "firmwareVersionCompare");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareIn(List<String> values) {
            addCriterion("firmware_version_compare in", values, "firmwareVersionCompare");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareNotIn(List<String> values) {
            addCriterion("firmware_version_compare not in", values, "firmwareVersionCompare");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareBetween(String value1, String value2) {
            addCriterion("firmware_version_compare between", value1, value2, "firmwareVersionCompare");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareNotBetween(String value1, String value2) {
            addCriterion("firmware_version_compare not between", value1, value2, "firmwareVersionCompare");
            return (Criteria) this;
        }

        public Criteria andSeriesNumIsNull() {
            addCriterion("series_num is null");
            return (Criteria) this;
        }

        public Criteria andSeriesNumIsNotNull() {
            addCriterion("series_num is not null");
            return (Criteria) this;
        }

        public Criteria andSeriesNumEqualTo(String value) {
            addCriterion("series_num =", value, "seriesNum");
            return (Criteria) this;
        }

        public Criteria andSeriesNumNotEqualTo(String value) {
            addCriterion("series_num <>", value, "seriesNum");
            return (Criteria) this;
        }

        public Criteria andSeriesNumGreaterThan(String value) {
            addCriterion("series_num >", value, "seriesNum");
            return (Criteria) this;
        }

        public Criteria andSeriesNumGreaterThanOrEqualTo(String value) {
            addCriterion("series_num >=", value, "seriesNum");
            return (Criteria) this;
        }

        public Criteria andSeriesNumLessThan(String value) {
            addCriterion("series_num <", value, "seriesNum");
            return (Criteria) this;
        }

        public Criteria andSeriesNumLessThanOrEqualTo(String value) {
            addCriterion("series_num <=", value, "seriesNum");
            return (Criteria) this;
        }

        public Criteria andSeriesNumLike(String value) {
            addCriterion("series_num like", value, "seriesNum");
            return (Criteria) this;
        }

        public Criteria andSeriesNumNotLike(String value) {
            addCriterion("series_num not like", value, "seriesNum");
            return (Criteria) this;
        }

        public Criteria andSeriesNumIn(List<String> values) {
            addCriterion("series_num in", values, "seriesNum");
            return (Criteria) this;
        }

        public Criteria andSeriesNumNotIn(List<String> values) {
            addCriterion("series_num not in", values, "seriesNum");
            return (Criteria) this;
        }

        public Criteria andSeriesNumBetween(String value1, String value2) {
            addCriterion("series_num between", value1, value2, "seriesNum");
            return (Criteria) this;
        }

        public Criteria andSeriesNumNotBetween(String value1, String value2) {
            addCriterion("series_num not between", value1, value2, "seriesNum");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareDesiredIsNull() {
            addCriterion("firmware_version_compare_desired is null");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareDesiredIsNotNull() {
            addCriterion("firmware_version_compare_desired is not null");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareDesiredEqualTo(String value) {
            addCriterion("firmware_version_compare_desired =", value, "firmwareVersionCompareDesired");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareDesiredNotEqualTo(String value) {
            addCriterion("firmware_version_compare_desired <>", value, "firmwareVersionCompareDesired");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareDesiredGreaterThan(String value) {
            addCriterion("firmware_version_compare_desired >", value, "firmwareVersionCompareDesired");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareDesiredGreaterThanOrEqualTo(String value) {
            addCriterion("firmware_version_compare_desired >=", value, "firmwareVersionCompareDesired");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareDesiredLessThan(String value) {
            addCriterion("firmware_version_compare_desired <", value, "firmwareVersionCompareDesired");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareDesiredLessThanOrEqualTo(String value) {
            addCriterion("firmware_version_compare_desired <=", value, "firmwareVersionCompareDesired");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareDesiredLike(String value) {
            addCriterion("firmware_version_compare_desired like", value, "firmwareVersionCompareDesired");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareDesiredNotLike(String value) {
            addCriterion("firmware_version_compare_desired not like", value, "firmwareVersionCompareDesired");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareDesiredIn(List<String> values) {
            addCriterion("firmware_version_compare_desired in", values, "firmwareVersionCompareDesired");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareDesiredNotIn(List<String> values) {
            addCriterion("firmware_version_compare_desired not in", values, "firmwareVersionCompareDesired");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareDesiredBetween(String value1, String value2) {
            addCriterion("firmware_version_compare_desired between", value1, value2, "firmwareVersionCompareDesired");
            return (Criteria) this;
        }

        public Criteria andFirmwareVersionCompareDesiredNotBetween(String value1, String value2) {
            addCriterion("firmware_version_compare_desired not between", value1, value2, "firmwareVersionCompareDesired");
            return (Criteria) this;
        }

        public Criteria andFirmwareUpgradeTypeIsNull() {
            addCriterion("firmware_upgrade_type is null");
            return (Criteria) this;
        }

        public Criteria andFirmwareUpgradeTypeIsNotNull() {
            addCriterion("firmware_upgrade_type is not null");
            return (Criteria) this;
        }

        public Criteria andFirmwareUpgradeTypeEqualTo(Byte value) {
            addCriterion("firmware_upgrade_type =", value, "firmwareUpgradeType");
            return (Criteria) this;
        }

        public Criteria andFirmwareUpgradeTypeNotEqualTo(Byte value) {
            addCriterion("firmware_upgrade_type <>", value, "firmwareUpgradeType");
            return (Criteria) this;
        }

        public Criteria andFirmwareUpgradeTypeGreaterThan(Byte value) {
            addCriterion("firmware_upgrade_type >", value, "firmwareUpgradeType");
            return (Criteria) this;
        }

        public Criteria andFirmwareUpgradeTypeGreaterThanOrEqualTo(Byte value) {
            addCriterion("firmware_upgrade_type >=", value, "firmwareUpgradeType");
            return (Criteria) this;
        }

        public Criteria andFirmwareUpgradeTypeLessThan(Byte value) {
            addCriterion("firmware_upgrade_type <", value, "firmwareUpgradeType");
            return (Criteria) this;
        }

        public Criteria andFirmwareUpgradeTypeLessThanOrEqualTo(Byte value) {
            addCriterion("firmware_upgrade_type <=", value, "firmwareUpgradeType");
            return (Criteria) this;
        }

        public Criteria andFirmwareUpgradeTypeIn(List<Byte> values) {
            addCriterion("firmware_upgrade_type in", values, "firmwareUpgradeType");
            return (Criteria) this;
        }

        public Criteria andFirmwareUpgradeTypeNotIn(List<Byte> values) {
            addCriterion("firmware_upgrade_type not in", values, "firmwareUpgradeType");
            return (Criteria) this;
        }

        public Criteria andFirmwareUpgradeTypeBetween(Byte value1, Byte value2) {
            addCriterion("firmware_upgrade_type between", value1, value2, "firmwareUpgradeType");
            return (Criteria) this;
        }

        public Criteria andFirmwareUpgradeTypeNotBetween(Byte value1, Byte value2) {
            addCriterion("firmware_upgrade_type not between", value1, value2, "firmwareUpgradeType");
            return (Criteria) this;
        }

        public Criteria andSigmeshAddressIsNull() {
            addCriterion("sigmesh_address is null");
            return (Criteria) this;
        }

        public Criteria andSigmeshAddressIsNotNull() {
            addCriterion("sigmesh_address is not null");
            return (Criteria) this;
        }

        public Criteria andSigmeshAddressEqualTo(String value) {
            addCriterion("sigmesh_address =", value, "sigmeshAddress");
            return (Criteria) this;
        }

        public Criteria andSigmeshAddressNotEqualTo(String value) {
            addCriterion("sigmesh_address <>", value, "sigmeshAddress");
            return (Criteria) this;
        }

        public Criteria andSigmeshAddressGreaterThan(String value) {
            addCriterion("sigmesh_address >", value, "sigmeshAddress");
            return (Criteria) this;
        }

        public Criteria andSigmeshAddressGreaterThanOrEqualTo(String value) {
            addCriterion("sigmesh_address >=", value, "sigmeshAddress");
            return (Criteria) this;
        }

        public Criteria andSigmeshAddressLessThan(String value) {
            addCriterion("sigmesh_address <", value, "sigmeshAddress");
            return (Criteria) this;
        }

        public Criteria andSigmeshAddressLessThanOrEqualTo(String value) {
            addCriterion("sigmesh_address <=", value, "sigmeshAddress");
            return (Criteria) this;
        }

        public Criteria andSigmeshAddressLike(String value) {
            addCriterion("sigmesh_address like", value, "sigmeshAddress");
            return (Criteria) this;
        }

        public Criteria andSigmeshAddressNotLike(String value) {
            addCriterion("sigmesh_address not like", value, "sigmeshAddress");
            return (Criteria) this;
        }

        public Criteria andSigmeshAddressIn(List<String> values) {
            addCriterion("sigmesh_address in", values, "sigmeshAddress");
            return (Criteria) this;
        }

        public Criteria andSigmeshAddressNotIn(List<String> values) {
            addCriterion("sigmesh_address not in", values, "sigmeshAddress");
            return (Criteria) this;
        }

        public Criteria andSigmeshAddressBetween(String value1, String value2) {
            addCriterion("sigmesh_address between", value1, value2, "sigmeshAddress");
            return (Criteria) this;
        }

        public Criteria andSigmeshAddressNotBetween(String value1, String value2) {
            addCriterion("sigmesh_address not between", value1, value2, "sigmeshAddress");
            return (Criteria) this;
        }

        public Criteria andBurnStatusIsNull() {
            addCriterion("burn_status is null");
            return (Criteria) this;
        }

        public Criteria andBurnStatusIsNotNull() {
            addCriterion("burn_status is not null");
            return (Criteria) this;
        }

        public Criteria andBurnStatusEqualTo(Byte value) {
            addCriterion("burn_status =", value, "burnStatus");
            return (Criteria) this;
        }

        public Criteria andBurnStatusNotEqualTo(Byte value) {
            addCriterion("burn_status <>", value, "burnStatus");
            return (Criteria) this;
        }

        public Criteria andBurnStatusGreaterThan(Byte value) {
            addCriterion("burn_status >", value, "burnStatus");
            return (Criteria) this;
        }

        public Criteria andBurnStatusGreaterThanOrEqualTo(Byte value) {
            addCriterion("burn_status >=", value, "burnStatus");
            return (Criteria) this;
        }

        public Criteria andBurnStatusLessThan(Byte value) {
            addCriterion("burn_status <", value, "burnStatus");
            return (Criteria) this;
        }

        public Criteria andBurnStatusLessThanOrEqualTo(Byte value) {
            addCriterion("burn_status <=", value, "burnStatus");
            return (Criteria) this;
        }

        public Criteria andBurnStatusIn(List<Byte> values) {
            addCriterion("burn_status in", values, "burnStatus");
            return (Criteria) this;
        }

        public Criteria andBurnStatusNotIn(List<Byte> values) {
            addCriterion("burn_status not in", values, "burnStatus");
            return (Criteria) this;
        }

        public Criteria andBurnStatusBetween(Byte value1, Byte value2) {
            addCriterion("burn_status between", value1, value2, "burnStatus");
            return (Criteria) this;
        }

        public Criteria andBurnStatusNotBetween(Byte value1, Byte value2) {
            addCriterion("burn_status not between", value1, value2, "burnStatus");
            return (Criteria) this;
        }

        public Criteria andBurnTimeIsNull() {
            addCriterion("burn_time is null");
            return (Criteria) this;
        }

        public Criteria andBurnTimeIsNotNull() {
            addCriterion("burn_time is not null");
            return (Criteria) this;
        }

        public Criteria andBurnTimeEqualTo(Date value) {
            addCriterion("burn_time =", value, "burnTime");
            return (Criteria) this;
        }

        public Criteria andBurnTimeNotEqualTo(Date value) {
            addCriterion("burn_time <>", value, "burnTime");
            return (Criteria) this;
        }

        public Criteria andBurnTimeGreaterThan(Date value) {
            addCriterion("burn_time >", value, "burnTime");
            return (Criteria) this;
        }

        public Criteria andBurnTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("burn_time >=", value, "burnTime");
            return (Criteria) this;
        }

        public Criteria andBurnTimeLessThan(Date value) {
            addCriterion("burn_time <", value, "burnTime");
            return (Criteria) this;
        }

        public Criteria andBurnTimeLessThanOrEqualTo(Date value) {
            addCriterion("burn_time <=", value, "burnTime");
            return (Criteria) this;
        }

        public Criteria andBurnTimeIn(List<Date> values) {
            addCriterion("burn_time in", values, "burnTime");
            return (Criteria) this;
        }

        public Criteria andBurnTimeNotIn(List<Date> values) {
            addCriterion("burn_time not in", values, "burnTime");
            return (Criteria) this;
        }

        public Criteria andBurnTimeBetween(Date value1, Date value2) {
            addCriterion("burn_time between", value1, value2, "burnTime");
            return (Criteria) this;
        }

        public Criteria andBurnTimeNotBetween(Date value1, Date value2) {
            addCriterion("burn_time not between", value1, value2, "burnTime");
            return (Criteria) this;
        }

        public Criteria andResetFlagIsNull() {
            addCriterion("reset_flag is null");
            return (Criteria) this;
        }

        public Criteria andResetFlagIsNotNull() {
            addCriterion("reset_flag is not null");
            return (Criteria) this;
        }

        public Criteria andResetFlagEqualTo(Byte value) {
            addCriterion("reset_flag =", value, "resetFlag");
            return (Criteria) this;
        }

        public Criteria andResetFlagNotEqualTo(Byte value) {
            addCriterion("reset_flag <>", value, "resetFlag");
            return (Criteria) this;
        }

        public Criteria andResetFlagGreaterThan(Byte value) {
            addCriterion("reset_flag >", value, "resetFlag");
            return (Criteria) this;
        }

        public Criteria andResetFlagGreaterThanOrEqualTo(Byte value) {
            addCriterion("reset_flag >=", value, "resetFlag");
            return (Criteria) this;
        }

        public Criteria andResetFlagLessThan(Byte value) {
            addCriterion("reset_flag <", value, "resetFlag");
            return (Criteria) this;
        }

        public Criteria andResetFlagLessThanOrEqualTo(Byte value) {
            addCriterion("reset_flag <=", value, "resetFlag");
            return (Criteria) this;
        }

        public Criteria andResetFlagIn(List<Byte> values) {
            addCriterion("reset_flag in", values, "resetFlag");
            return (Criteria) this;
        }

        public Criteria andResetFlagNotIn(List<Byte> values) {
            addCriterion("reset_flag not in", values, "resetFlag");
            return (Criteria) this;
        }

        public Criteria andResetFlagBetween(Byte value1, Byte value2) {
            addCriterion("reset_flag between", value1, value2, "resetFlag");
            return (Criteria) this;
        }

        public Criteria andResetFlagNotBetween(Byte value1, Byte value2) {
            addCriterion("reset_flag not between", value1, value2, "resetFlag");
            return (Criteria) this;
        }

        public Criteria andZoneRawOffsetIsNull() {
            addCriterion("zone_raw_offset is null");
            return (Criteria) this;
        }

        public Criteria andZoneRawOffsetIsNotNull() {
            addCriterion("zone_raw_offset is not null");
            return (Criteria) this;
        }

        public Criteria andZoneRawOffsetEqualTo(Byte value) {
            addCriterion("zone_raw_offset =", value, "zoneRawOffset");
            return (Criteria) this;
        }

        public Criteria andZoneRawOffsetNotEqualTo(Byte value) {
            addCriterion("zone_raw_offset <>", value, "zoneRawOffset");
            return (Criteria) this;
        }

        public Criteria andZoneRawOffsetGreaterThan(Byte value) {
            addCriterion("zone_raw_offset >", value, "zoneRawOffset");
            return (Criteria) this;
        }

        public Criteria andZoneRawOffsetGreaterThanOrEqualTo(Byte value) {
            addCriterion("zone_raw_offset >=", value, "zoneRawOffset");
            return (Criteria) this;
        }

        public Criteria andZoneRawOffsetLessThan(Byte value) {
            addCriterion("zone_raw_offset <", value, "zoneRawOffset");
            return (Criteria) this;
        }

        public Criteria andZoneRawOffsetLessThanOrEqualTo(Byte value) {
            addCriterion("zone_raw_offset <=", value, "zoneRawOffset");
            return (Criteria) this;
        }

        public Criteria andZoneRawOffsetIn(List<Byte> values) {
            addCriterion("zone_raw_offset in", values, "zoneRawOffset");
            return (Criteria) this;
        }

        public Criteria andZoneRawOffsetNotIn(List<Byte> values) {
            addCriterion("zone_raw_offset not in", values, "zoneRawOffset");
            return (Criteria) this;
        }

        public Criteria andZoneRawOffsetBetween(Byte value1, Byte value2) {
            addCriterion("zone_raw_offset between", value1, value2, "zoneRawOffset");
            return (Criteria) this;
        }

        public Criteria andZoneRawOffsetNotBetween(Byte value1, Byte value2) {
            addCriterion("zone_raw_offset not between", value1, value2, "zoneRawOffset");
            return (Criteria) this;
        }

        public Criteria andCloudPackageCodeIsNull() {
            addCriterion("cloud_package_code is null");
            return (Criteria) this;
        }

        public Criteria andCloudPackageCodeIsNotNull() {
            addCriterion("cloud_package_code is not null");
            return (Criteria) this;
        }

        public Criteria andCloudPackageCodeEqualTo(String value) {
            addCriterion("cloud_package_code =", value, "cloudPackageCode");
            return (Criteria) this;
        }

        public Criteria andCloudPackageCodeNotEqualTo(String value) {
            addCriterion("cloud_package_code <>", value, "cloudPackageCode");
            return (Criteria) this;
        }

        public Criteria andCloudPackageCodeGreaterThan(String value) {
            addCriterion("cloud_package_code >", value, "cloudPackageCode");
            return (Criteria) this;
        }

        public Criteria andCloudPackageCodeGreaterThanOrEqualTo(String value) {
            addCriterion("cloud_package_code >=", value, "cloudPackageCode");
            return (Criteria) this;
        }

        public Criteria andCloudPackageCodeLessThan(String value) {
            addCriterion("cloud_package_code <", value, "cloudPackageCode");
            return (Criteria) this;
        }

        public Criteria andCloudPackageCodeLessThanOrEqualTo(String value) {
            addCriterion("cloud_package_code <=", value, "cloudPackageCode");
            return (Criteria) this;
        }

        public Criteria andCloudPackageCodeLike(String value) {
            addCriterion("cloud_package_code like", value, "cloudPackageCode");
            return (Criteria) this;
        }

        public Criteria andCloudPackageCodeNotLike(String value) {
            addCriterion("cloud_package_code not like", value, "cloudPackageCode");
            return (Criteria) this;
        }

        public Criteria andCloudPackageCodeIn(List<String> values) {
            addCriterion("cloud_package_code in", values, "cloudPackageCode");
            return (Criteria) this;
        }

        public Criteria andCloudPackageCodeNotIn(List<String> values) {
            addCriterion("cloud_package_code not in", values, "cloudPackageCode");
            return (Criteria) this;
        }

        public Criteria andCloudPackageCodeBetween(String value1, String value2) {
            addCriterion("cloud_package_code between", value1, value2, "cloudPackageCode");
            return (Criteria) this;
        }

        public Criteria andCloudPackageCodeNotBetween(String value1, String value2) {
            addCriterion("cloud_package_code not between", value1, value2, "cloudPackageCode");
            return (Criteria) this;
        }

        public Criteria andThirdMerchantCodeIsNull() {
            addCriterion("third_merchant_code is null");
            return (Criteria) this;
        }

        public Criteria andThirdMerchantCodeIsNotNull() {
            addCriterion("third_merchant_code is not null");
            return (Criteria) this;
        }

        public Criteria andThirdMerchantCodeEqualTo(String value) {
            addCriterion("third_merchant_code =", value, "thirdMerchantCode");
            return (Criteria) this;
        }

        public Criteria andThirdMerchantCodeNotEqualTo(String value) {
            addCriterion("third_merchant_code <>", value, "thirdMerchantCode");
            return (Criteria) this;
        }

        public Criteria andThirdMerchantCodeGreaterThan(String value) {
            addCriterion("third_merchant_code >", value, "thirdMerchantCode");
            return (Criteria) this;
        }

        public Criteria andThirdMerchantCodeGreaterThanOrEqualTo(String value) {
            addCriterion("third_merchant_code >=", value, "thirdMerchantCode");
            return (Criteria) this;
        }

        public Criteria andThirdMerchantCodeLessThan(String value) {
            addCriterion("third_merchant_code <", value, "thirdMerchantCode");
            return (Criteria) this;
        }

        public Criteria andThirdMerchantCodeLessThanOrEqualTo(String value) {
            addCriterion("third_merchant_code <=", value, "thirdMerchantCode");
            return (Criteria) this;
        }

        public Criteria andThirdMerchantCodeLike(String value) {
            addCriterion("third_merchant_code like", value, "thirdMerchantCode");
            return (Criteria) this;
        }

        public Criteria andThirdMerchantCodeNotLike(String value) {
            addCriterion("third_merchant_code not like", value, "thirdMerchantCode");
            return (Criteria) this;
        }

        public Criteria andThirdMerchantCodeIn(List<String> values) {
            addCriterion("third_merchant_code in", values, "thirdMerchantCode");
            return (Criteria) this;
        }

        public Criteria andThirdMerchantCodeNotIn(List<String> values) {
            addCriterion("third_merchant_code not in", values, "thirdMerchantCode");
            return (Criteria) this;
        }

        public Criteria andThirdMerchantCodeBetween(String value1, String value2) {
            addCriterion("third_merchant_code between", value1, value2, "thirdMerchantCode");
            return (Criteria) this;
        }

        public Criteria andThirdMerchantCodeNotBetween(String value1, String value2) {
            addCriterion("third_merchant_code not between", value1, value2, "thirdMerchantCode");
            return (Criteria) this;
        }

        public Criteria andWifiInfoIsNull() {
            addCriterion("wifi_info is null");
            return (Criteria) this;
        }

        public Criteria andWifiInfoIsNotNull() {
            addCriterion("wifi_info is not null");
            return (Criteria) this;
        }

        public Criteria andWifiInfoEqualTo(String value) {
            addCriterion("wifi_info =", value, "wifiInfo");
            return (Criteria) this;
        }

        public Criteria andWifiInfoNotEqualTo(String value) {
            addCriterion("wifi_info <>", value, "wifiInfo");
            return (Criteria) this;
        }

        public Criteria andWifiInfoGreaterThan(String value) {
            addCriterion("wifi_info >", value, "wifiInfo");
            return (Criteria) this;
        }

        public Criteria andWifiInfoGreaterThanOrEqualTo(String value) {
            addCriterion("wifi_info >=", value, "wifiInfo");
            return (Criteria) this;
        }

        public Criteria andWifiInfoLessThan(String value) {
            addCriterion("wifi_info <", value, "wifiInfo");
            return (Criteria) this;
        }

        public Criteria andWifiInfoLessThanOrEqualTo(String value) {
            addCriterion("wifi_info <=", value, "wifiInfo");
            return (Criteria) this;
        }

        public Criteria andWifiInfoLike(String value) {
            addCriterion("wifi_info like", value, "wifiInfo");
            return (Criteria) this;
        }

        public Criteria andWifiInfoNotLike(String value) {
            addCriterion("wifi_info not like", value, "wifiInfo");
            return (Criteria) this;
        }

        public Criteria andWifiInfoIn(List<String> values) {
            addCriterion("wifi_info in", values, "wifiInfo");
            return (Criteria) this;
        }

        public Criteria andWifiInfoNotIn(List<String> values) {
            addCriterion("wifi_info not in", values, "wifiInfo");
            return (Criteria) this;
        }

        public Criteria andWifiInfoBetween(String value1, String value2) {
            addCriterion("wifi_info between", value1, value2, "wifiInfo");
            return (Criteria) this;
        }

        public Criteria andWifiInfoNotBetween(String value1, String value2) {
            addCriterion("wifi_info not between", value1, value2, "wifiInfo");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}